package cn.ljy.authority.model.query;


import cn.ljy.authority.model.SysShop;
import cn.ljy.authority.model.SysUser;
import cn.ljy.authority.model.SysWechatUser;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;

/**
 * 作为理发师的查询条件
 */
@ApiModel(value = "微信账户查询条件")
@Data
public class SysWechatUserQuery extends SysWechatUser {

    private Integer roleId; // 角色查询条件

    private Integer[] roleIds; // 用于接收前端传递过来的角色集合id

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTimeQueryOfBegin; // 注册时间——开始日期

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTimeQueryOfEnd; // 注册时间——结束日期

    private Boolean accountNonLockedQuery; // 是否解锁查询条件
    @NotNull(message = "用户ID不能为空")
    private SysUser user; // 对应数据库 user_id
    private Long userId;

    @NotBlank(message = "微信openid不能为空")
    @Length(max = 100, message = "openid长度不能超过 {max} 个字符")
    private String openId; // 对应数据库 open_id

    @Length(max = 100, message = "unionid长度不能超过 {max} 个字符")
    private String unionId; // 对应数据库 union_id

    @Length(max = 100, message = "昵称长度不能超过 {max} 个字符")
    private String nickname; // 对应数据库 name

    @Length(max = 255, message = "头像URL长度不能超过 {max} 个字符")
    private String avatarUrl; // 对应数据库 head_img_url

}